package com.urbainski.componentes.text
{
	import flash.events.FocusEvent;
	
	import mx.validators.EmailValidator;
	
	import spark.components.TextInput;

	public class MyEmailInput extends TextInput
	{
	
		/**
		 * @author Cristian Elder Urbainski
		 * @since 28/12/2011
		 */
		
		public var _requerid : Boolean;
		
		private var emailValidador : EmailValidator;
		
		public function MyEmailInput()
		{
			super();
			
			emailValidador = new EmailValidator();
			emailValidador.required = this._requerid;
			emailValidador.source = this;
			emailValidador.property = "text";
			emailValidador.invalidCharError = "Caracter inválido";
			emailValidador.invalidDomainError = "Está faltando o domínio no seu endereço de email";
			emailValidador.missingAtSignError = "Sinal @ não encontrado";
			emailValidador.requiredFieldError = "Esta campo é obrigatório";
			emailValidador.missingPeriodInDomainError = "Endereço de email errado, falta domínio";
		}
		
		public function get requerid() : Boolean {
			return _requerid;
		}
		
		public function set requerid(value : Boolean) : void {
			if(value == _requerid){
				return;
			}
			
			_requerid = value;
			
			if(emailValidador != null){
				emailValidador.required = _requerid;
			}
		}

	}
}